SENDMAIL(8) | System Manager's Manual | SENDMAIL(8) |
NAZWA¶
sendmail
— agent
transportu poczty elektronicznej
SKŁADNIA¶
sendmail
[flagi]
[adres ...] newaliases
mailq
[-v
]
OPIS¶
Sendmail
wysyła
wiadomość do jednego, lub więcej
odbiorców,
przerzucając ją przez wszelkie niezbędne sieci.
Sendmail
może dokonywać forwardowania
międzysieciowego, aby dostarczyć wiadomość do
właściwego miejsca.
Sendmail
nie jest komendą
interfejsu użytkownika; do tego służą inne
programy; sendmail
używany jest do
dostarczania jedynie preformatowanych wiadomości.
Bez podanych flag, sendmail
czyta
standardowe wejście, aż do EOF, lub linii zawierającej
pojedynczą kropkę i wysyła kopię tej
wiadomości do wymienionych adresów. Określa
używane sieć(i) na podstawie składni
adresów.
Adresy lokalne sa podglądane w pliku i odpowiednio aliasowane. Aliasowanie można wyłączyć, poprzedzając adres odwrotnym ukośnikiem. Zazwyczaj, w rozszerzeniach aliasowych nie jest włączony nadawca, np. jeśli `john' wysyła do `grupy', a `grupa' zawiera `johna', to wiadomość nie będzie dostarczana `johnowi'.
Parametry¶
-B
typ- Ustaw rodzaj ciała listu na typ. Obecnie
legalne wartości to
7BIT
lub8BITMIME
. -ba
- Wejdź w tryb ARPANET. Wszystkie linie wejściowe muszą kończyć się CR-LF, i wszystkie generowane wiadomości będą miały na końcu CR-LF. Poza tym, pola ``From:'' i ``Sender:'' są testowane w poszukiwaniu imienia nadawcy.
-bd
- Działaj jako demon. Wymage berkeleyowskiego IPC.
Sendmail
będzie forkował (patrz fork(2)) i ruszy w tle, nasłuchując na gnieździe 25 za nadchodzącymi połączeniami SMTP. Jest on zazwyczaj wywoływany w tej postaci z /etc/rc. -bD
- To samo co
-bd
lecz powoduje pracę na głównym planie. -bh
- Drukuj trwałą bazę statusu hosta.
-bH
- Wypróżnij trwałą bazę statusu hosta.
-bi
- Inicjalizuj bazę aliasów.
-bm
- Dostarcz pocztę w normalny sposób (domyślne).
-bp
- Wydrukuj listing kolejki.
-bs
- Użyj na standardowym wejściu i wyjściu
protokołu SMTP, opisanego w RFC821. Flaga ta powoduje wszystkie
operacje flagi
-ba
, które sa kompatybilne z SMTP. -bt
- Działaj w trybie testowania adresu. Tryb ten odczytuje adresy i pokazuje etapy ich obróbki; może to być używane do testowania tablic konfiguracji.
-bv
- Weryfikuj tylko nazwy - nie próbuj zebrać, lub dostarczyć wiadomości. Tryb ten jest używany zwykle do zatwierdzania użytkowników, lub list dyskusyjnych.
-C
plik- Użyj alternatywnego pliku konfiguracyjnego.
Sendmail
odmawia pracy jako root, jeśli zostanie podany alternatywny plik konfiguracyjny. -d
X- Ustaw zmienną debuggowania na X.
-F
pełnanazwa- Ustaw pełną nazwę wysyłającego.
-f
nazwa- Ustaw nazwę osoby ``from'' (np, nadawcy listu).
-f
Może być użyte tylko przez ``zaufanych'' użytkowników (zwykle root, daemon, i network) lub jeśli osoba, którą chcesz się stać jest tą samą osobą, którą jesteś. -h
N- Ustaw licznik hopów na N. Licznik ten jest zwiększany za każdym przetworzeniem listu. Gdy sięgnie limitu, list zwracany jest z komunikatem o błędzie, jako ofiara pętli aliasowej. Jeśli opcja ta nie jest podana, linie ``Received:'' nie są zliczane.
-i
- Ignoruj samotne kropki w liniach w nadchodzących wiadomościach. Powinno to być ustawione jeśli odczytujesz dane z pliku.
-N
dsn- Ustaw powiadamianie o statusie dostarczenia na wartość
dsn, która może być
‘
never
’ dla braku powiadomień, lub oddzieloną przecinkami listą wartości ‘failure
’ aby być powiadamianym po niepowiedzeniu się dostarczenia, ‘delay
’ aby być powiadamianym po opóźnieniu dostarczenia i ‘success
’ aby być powiadamianym o szczęśliwym dostarczeniu wiadomości. -n
- Nie rób aliasowania.
-O
opcja=wartość- Ustaw opcję opcja na wartość wartość. Postać ta używa długich nazw. Patrz niżej dla szczegółów.
-o
x wartość- Ustaw opcję x na określoną wartość. Ta postać używa nazw jednoznakowych. Krótkie nazwy nie są opisane w tym podręczniku, zobacz Sendmail Installation and Operation Guide. (w /usr/doc/sendmail/op/ - przyp. tłum.)
-p
protokół- Ustaw nazwę protokołu, używanego do odbierania wiadomości. Może to być prosta nazwa protokołu, taka jak ``UUCP'', lub protokół i nazwa hosta, np. ``UUCP:ucbvax''.
-q
[czas]- Przetwórz wiadomości zachowane w kolejce w podanych
interwałach. Jeśli czas jest
pominięty, przetwórz kolejkę tylko raz. (jest to to,
czego się używa do wysyłania poczty przez [otwarte
połączenie] PPP -- przyp. tłum.)
Czas jest podawany jako oznaczona liczba, gdzie
‘
s
’ oznacza sekundy, ‘m
’ minuty, ‘h
’ godziny, ‘d
’ dni i ‘w
’ oznacza tygodnie. Na przykład ‘-q1h30m
’ lub ‘-q90m
’ ustawiają timeout na jedną godzinę i 30 minut. Jeśli czas jest podany,sendmail
będzie działał w tle. Opcja ta może być bezpiecznie używana z-bd
. -qI
substr- Ogranicz przetwarzane zadania do tych, zawierających substr jako podciąg identyfikatora kolejki.
-qR
substr- Ogranicz przetwarzane zadania do tych, zawierających substr jako podciąg w nazwie jednego z odbiorców.
-qS
substr- Ogranicz przetwarzane zadania do tych, zawierających substr jako podciąg w nazwie nadawcy.
-R
return- Ustaw ilość wiadomości, zwracanych przy odbijaniu
listu. Parametr return może być
‘
full
’ aby zwracać całą wiadomość, lub ‘hdrs
’ aby zwracać jedynie nagłówki. -r
nazwa- Alternatywna i przedawniona postać flagi
-f
. -t
- Szukaj odbiorców w wiadomości. W poszukiwaniu odbiorców, sendmail poszuka w wiadomości linii To:, Cc:, Bcc:. (Normalnie wymaga podania odbiorcy w linii komend - przyp. tłum.) Argumenty adresowe z linii komend nie otrzymają kopii wiadomości.
-U
- Pierwotna (użytkownikowa) przyległość Powinno
to być ustawiane
zawsze
w wypadku wołania z agenta użytkownika, takiego jak
mail (1)
czyexmh
i nigdy w wypadku wywoływania z sieciowego agenta dostarczającego, takiego jakrmail (1).
-V
envid- Ustaw oryginalny identyfikator koperty. Jest to rozprzestrzeniane przez SMTP do serwerów obsługujących DSNy i zwracane w wiadomościach o błędach, zgodnych z DSN.
-v
- Wejdź w tryb gadatliwy. Rozwijanie aliasów będzie ogłaszane, itp.
-X
logfile- Loguj cały przepływ do wskazanych plików z logami. Powinno to być używane tylko jako ostatni sposób debuggowania błędów mailera. Będzie szybko logować duże ilości danych.
Opcje¶
Istnieje również spora liczba opcji przetwarzania,
które można ustawić. Normalnie są one
używane tylko przez administratora systemu. Opcje mogą
być ustawiane albo z linii komend, przy użyciu flagi
-o
(dla nazw krótkich), lub
-O
(dla nazw długich), albo w pliku
konfiguracyjnym. Oto częściowa lista, ograniczona do tych
opcji, które mogą być przydatne w linii komend i
pokazuje tylko długie nazwy; kompletna lista (i
szczegóły) znajdują się w
Sendmail Installation and Operation Guide (który
masz przypuszczalnie w katalogu /usr/doc/sendmail/op/ - przyp.
tłum.). Opcje to:
AliasFile=
plik- Użyj alternatywnego pliku z aliasami.
HoldExpensive
- Na mailerach, które są kosztowne podczas łączenia się z nimi, nie inicjalizuj natychmiastowych połączeń. Implikuje to kolejkowanie.
CheckpointInterval=
N- Sprawdzaj plik kolejki po każdych N szczęśliwych dostarczeniach (domyślnie 10). Zapobiega to kosztownym dostarczeniom duplikatów, podczas wysyłania na długie (odległe?) listy dyskusyjne, przerwane padem systemu.
DeliveryMode=
x- Ustaw tryb dostarczania na x. Tryby dostarczania to
‘
i
’ dla interaktywnego dostarczania (synchronicznego), ‘b
’ dla dostarczania w tle (asynchronicznego), ‘q
’ dla kolejkowania - np. właściwe dostarczenie będzie dokonane w następnym uruchomieniu kolejki, ‘d
’ dla odłożonego - to samo co ‘q
’ lecz unikane sa podglądy baz danych (szczególnie DNS i NIS). ErrorMode=
x- Ustaw przetwarzanie błędów na tryb
x. Prawidłowe tryby to
‘
m
’ do odsyłania pocztą komunikatu o błędzie, ‘w
’ do ``odpisania'' (write) komunikatu o błędzie (lub odesłania go z powrotem, jeśli nadawca nie jest zalogowany), ‘p
’ do wypisania błędów na terminal (domyślnie), ‘q
’ do zignorowania komunikatów o błędach (zwracany jest tylko status wyjścia), i ‘e
’ do robienia specjalnego przetwarzania dla BerkNet. Jeśli tekst wiadomości nie jest odsyłany przez tryby ‘m
’ lub ‘w
’ i jeśli nadawca jest lokalny, kopia wiadomości jest doklejana do pliku dead.letter w katalogu domowym nadawcy. SaveFromLine
- Zachowaj linie From z początku wiadomości, będące w stylu UNIX-style.
MaxHopCount=
N- Maksymalna liczba razy, kiedy wiadomość może przeżyć ``hop'' nim zdecydujemy, że jest zapętlona.
IgnoreDots
- Nie uważaj kropek w pustych liniach jako terminatorów wiadomości.
SendMimeErrors
- Wysyłaj komunikaty o błędach w formacie MIME. Jeśli nie ustawione, rozszerzenie DSN (Delivery Status Notification -- Powiadomienie o Statusie Dostarczenia) SMTP jest wyłączane.
ConnectionCacheTimeout=
timeout- Ustaw timeout cache połączenia.
ConnectionCacheSize=
N- Ustaw rozmiar cache połączenia.
LogLevel=
n- Ustaw poziom logowania.
MeToo
- Wysyłaj też do ``mnie'' (nadawcy), jeśli znajduję się w rozwinięciu aliasowym.
CheckAliases
- Uprawomocnij rhs aliasów podczas komendy newaliases(1) .
OldStyleHeaders
- Jeśli jest to ustawione, wiadomości moga mieć starodawne nagłówki. Jeśli nie, wiadomość musi mieć nowe nagłówki (np. orzecinki zamiast spacji między adresami). Jeśli jest ot ustawione, używany jest adaptacyjny algorytm, który rozpoznaje prawidłowo te nagłówki.
QueueDirectory=
katalogkolejki- Wybierz katalog, do którego kolejkowac wiadomości.
StatusFile=
plik- Zachowaj statystyki do podanego pliku.
Timeout.queuereturn=
czas- Ustaw timeout dla niedostarczonych wiadomości z kolejki na określony czas. Po tym, jak dostarczenie nie powiedzie się przez podany czas, wiadomość zostanie zwrócona do nadawcy. Domyślną wartością jest 5 dni.
UserDatabaseSpec=
userdatabase- Jeślijest to ustawione, do forwardowania sprawdzana jest baza
użytkownika. Można uważać to jako rozszerzenie
mechanizmu aliasowania, poza tym, że baza powinna być
dystrybutowana; aliasy są lokalne na danym hoście.
Może to nie być dostępne, jeśli twój
sendmail nie ma wkompilowanej opcji
USERDB
. ForkEachJob
- Forkuj każde zadanie podczas przeleceń kolejki. Może być przydatne dla maszyn z małą ilością pamięci.
SevenBitInput
- Rozbierz nadchodzące wiadomości do 7 bitów.
EightBitMode=
tryb- Ustaw traktowanie ósmego bitu wejściowego dla
siedmiobitowych celów na tryb:
m
(mimefy) konwertuje na siedmiobitowy format MIME,p
(pass) przekaże wiadomość jako ośmiobitową (naruszając protokoły), is
(strict) odbije wiadomość. MinQueueAge=
timeout- Ustaw, jak długo zadanie musi fermentować w kolejce nim nastąpi próba jego wysłania.
DefaultCharSet=
charset- Ustawia domyślny zestaw znaków, oznaczany do oznaczania danych 8-bitowych.
DialDelay=
czasspania- Jeśli otwarcie połączenia się nie powiedzie, zaśnij na czasspania sekund i spróbuj ponownie. Przydatne w hostach dzwoń-na-żądanie.
NoRecipientAction=
akcja- Ustaw zachowanie gdy nie ma nagłówków
odbiorców (To:, Cc: lub Bcc:) na
akcję:
none
pozostawia wiadomość bez zmian,add-to
dodaje nagłówek To: z odbiorcami koperty,add-apparently-to
dodaje nagłówek Apparently-To: z odbiorcami koperty,add-bcc
dodaje nagłówek Bcc: iadd-to-undisclosed
dodaje nagłówek ‘To: undisclosed-recipients:;
’. MaxDaemonChildren=
N- Ustawia maksymalną liczbę dzieci, których demon SMTP może mieć naraz na N.
ConnectionRateThrottle=
N- Ustawia maksymalną liczbę połączeń na sekundę na porcie SMTP na N.
W aliasach, pierwszy znak nazwy może być
pionową kreską, powodując tak interpretację
reszty nazwy jako komendy, do której należy
przesłać list poprzez potok. Może być
niezbędnym zacytowanie tej nazwy, by sendmail
nie wycią spacji między argumentami. Na przykład,
częstym aliasem jest
msgs: "|/usr/bin/msgs -s"
Aliasy mogą mieć też składnię “:include:nazwapliku” , prosząc tak sendmaila by odczytał podany plik z listą odbiorców. Na przykład, alias taki jak:
poets: ":include:/usr/local/lib/poets.list"
odczyta /usr/local/lib/poets.list dla listy adresów, tworzących grupę.
Sendmail
zwraca status wyjścia,
opisujący co zrobił. Kody są zdefiniowane w
⟨sysexits.h⟩:
EX_OK
- Szczęśliwe zakończenie wszystkich adresów.
EX_NOUSER
- Nie rozpoznana nazwa użytkownika.
EX_UNAVAILABLE
- Potrzebne zasoby nie były dostępne.
EX_SYNTAX
- Błąd składni w adresie.
EX_SOFTWARE
- Wewnętrzny błąd oprogramowania, włączający nieprawidłowe argumenty.
EX_OSERR
- Tymczasowy błąd systemu operacyjnego, taki jak “niemożność forka”.
EX_NOHOST
- Nazwa hosta nierozpoznana.
EX_TEMPFAIL
- Wiadomość nie mogła być dostarczona, lecz jest skolejkowana.
Po wywołaniu jako newaliases
,
sendmail
przebudowuje bazę aliasów. Po
wywołaniu jako mailq
,
sendmail
drukuje zawartość kolejki
pocztowej.
PLIKI¶
Oprócz pliku /etc/sendmail.cf , występują w nim następujące ścieżki: (wartości te są więc tylko przybliżeniami).
- /etc/aliases
- czyste dane dla nazw aliasowych
- /etc/aliases.db
- baza danych nazw aliasowych
- /etc/sendmail.cf
- plik konfiguracyjny
- /etc/sendmail.hf
- plik pomocy
- /var/log/sendmail.st
- zebrane statystyki
- /var/spool/mqueue/*
- pliki tymczasowe
- /var/run/sendmail.pid
- Id procesu demona.
ZOBACZ TAKŻE¶
binmail(1), mail(1), rmail(1), syslog(3), aliases(5), mailaddr(7), rc(8);
DARPA Internet Request For Comments RFC819, RFC821, RFC822. Sendmail - An Internetwork Mail Router, No. 9, SMM. Sendmail Installation and Operation Guide, No. 8, SMM. Po polsku, `Krótka i polska instrukcja konfiguracji sendmaila' z http://dione.ids.pl/~pborys/txt/linux/sendmail.txt, streszczająca wyżej wymienioną pozycję.
HISTORIA¶
Komenda sendmail
pojawiła
się w 4.2BSD.
September 20, 1996 | BSD 4 |